﻿using DataBaseDAO;
using Microsoft.AspNetCore.Mvc;
using MyDatabase;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace MyCSharpMVCProject.Controllers
{
    public class UserController : BaseController
    {
        // 调用用户的DAO层对数据库用户表进行操作
        private UserDAO userDAO = new UserDAO();

        public ActionResult UsersList()
        {
            return View();
        }

        public ActionResult UserDetail()
        {
            return View();
        }

        // 获取用户列表
        public string GetUsersList(string keyWord)
        {
            var data = userDAO.GetUsersList(keyWord);
            return data.ToJsonCon();
        }

        // 添加用户
        public ActionResult InsertSingleUser(User user)
        {
            if( "管理员".Equals(user.Power) || "进货员".Equals(user.Power))
            {
                userDAO.InsertSingleUser(user);
                return SuccessResult("新增成功");
            }
            else
            {
                return ErrorResult("用户类型错误！");
            }
        }

        // 根据id获取用户信息，用于数据回显
        public string GetSingleUser(int Id)
        {
            var data = userDAO.GetSingleUser(Id);
            return data.ToJsonCon();
        }

        // 更新用户信息
        public ActionResult UpdateSingleUser(User user)
        {
            userDAO.UpdateSingleUser(user);
            return SuccessResult("信息修改成功");
        }

        // 根据id删除用户信息
        public ActionResult DelUser(int Id)
        {
            bool result = userDAO.DelUser(Id);
            if (result)
            {
                return SuccessResult("删除成功");
            }
            else
            {
                return ErrorResult("删除失败");
            }
        }
    }
}
